<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content=
    "application/xhtml+xml; charset=iso-8859-1" />
    <title>
      alsa-tools-1.2.2
    </title>
    <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
    "text/css" media="print" />
  </head>
  <body class="blfs" id="blfs-2020-04-02">
    <div class="navheader">
      <h4>
        Beyond Linux<sup>�</sup> From Scratch <span class="phrase">(System
        V</span> Edition) - Version 2020-04-02
      </h4>
      <h3>
        Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers
      </h3>
      <ul>
        <li class="prev">
          <a accesskey="p" href="alsa-utils.html" title=
          "alsa-utils-1.2.2">Prev</a>
          <p>
            alsa-utils-1.2.2
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="alsa-firmware.html" title=
          "alsa-firmware-1.2.1">Next</a>
          <p>
            alsa-firmware-1.2.1
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="libdriv.html" title=
          "Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <h1 class="sect1">
        <a id="alsa-tools" name="alsa-tools"></a>alsa-tools-1.2.2
      </h1>
      <div class="package" lang="en" xml:lang="en">
        <h2 class="sect2">
          Introduction to ALSA Tools
        </h2>
        <p>
          The <span class="application">ALSA Tools</span> package contains
          advanced tools for certain sound cards.
        </p>
        <p>
          This package is known to build and work properly using an LFS-9.1
          platform.
        </p>
        <h3>
          Package Information
        </h3>
        <div class="itemizedlist">
          <ul class="compact">
            <li class="listitem">
              <p>
                Download (HTTP): <a class="ulink" href=
                "https://www.alsa-project.org/files/pub/tools/alsa-tools-1.2.2.tar.bz2">
                https://www.alsa-project.org/files/pub/tools/alsa-tools-1.2.2.tar.bz2</a>
              </p>
            </li>
            <li class="listitem">
              <p>
                Download (FTP): <a class="ulink" href=
                "ftp://ftp.alsa-project.org/pub/tools/alsa-tools-1.2.2.tar.bz2">
                ftp://ftp.alsa-project.org/pub/tools/alsa-tools-1.2.2.tar.bz2</a>
              </p>
            </li>
            <li class="listitem">
              <p>
                Download MD5 sum: 4e6187d2c3a8c73a9d75d66a72faed27
              </p>
            </li>
            <li class="listitem">
              <p>
                Download size: 1.8 MB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated disk space required: 31 MB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated build time: 0.4 SBU
              </p>
            </li>
          </ul>
        </div>
        <h3>
          ALSA Tools Dependencies
        </h3>
        <h4>
          Required
        </h4>
        <p class="required">
          <a class="xref" href="alsa-lib.html" title=
          "alsa-lib-1.2.2">alsa-lib-1.2.2</a>
        </p>
        <h4>
          Optional
        </h4>
        <p class="optional">
          <a class="xref" href="../x/gtk2.html" title=
          "GTK+-2.24.32">GTK+-2.24.32</a> (to build <span class=
          "command"><strong>echomixer</strong></span>, <span class=
          "command"><strong>envy24control</strong></span> and <span class=
          "command"><strong>rmedigicontrol</strong></span>), <a class="xref"
          href="../x/gtk3.html" title="GTK+-3.24.16">GTK+-3.24.16</a> (to
          build <span class="command"><strong>hdajackretask</strong></span>)
          and <a class="xref" href="../x/fltk.html" title=
          "FLTK-1.3.5">FLTK-1.3.5</a> (to build <span class=
          "command"><strong>hdspconf</strong></span> and <span class=
          "command"><strong>hdspmixer</strong></span>)
        </p>
        <p class="usernotes">
          User Notes: <a class="ulink" href=
          "http://wiki.linuxfromscratch.org/blfs/wiki/alsa-tools">http://wiki.linuxfromscratch.org/blfs/wiki/alsa-tools</a>
        </p>
      </div>
      <div class="installation" lang="en" xml:lang="en">
        <h2 class="sect2">
          Installation of ALSA Tools
        </h2>
        <div class="admon note">
          <img alt="[Note]" src="../images/note.png" />
          <h3>
            Note
          </h3>
          <p>
            When installing multiple packages in a script, the installation
            needs to be done as the root user. There are three general
            options that can be used to do this:
          </p>
          <div class="orderedlist">
            <ol>
              <li class="listitem">
                <p>
                  Run the entire script as the root user (not recommended).
                </p>
              </li>
              <li class="listitem">
                <p>
                  Use the <span class="command"><strong>sudo</strong></span>
                  command from the <a class="xref" href=
                  "../postlfs/sudo.html" title=
                  "Sudo-1.8.31p1">Sudo-1.8.31p1</a> package.
                </p>
              </li>
              <li class="listitem">
                <p>
                  Use <span class="command"><strong>su -c "command
                  arguments"</strong></span> (quotes required) which will ask
                  for the root password for every iteration of the loop.
                </p>
              </li>
            </ol>
          </div>
          <p>
            One way to handle this situation is to create a short
            <span class="command"><strong>bash</strong></span> function that
            automatically selects the appropriate method. Once the command is
            set in the environment, it does not need to be set again.
          </p>
          <pre class="userinput">
<kbd class="command">as_root()
{
  if   [ $EUID = 0 ];        then $*
  elif [ -x /usr/bin/sudo ]; then sudo $*
  else                            su -c \\"$*\\"
  fi
}

export -f as_root</kbd>
</pre>
        </div>
        <p>
          First, start a subshell that will exit on error:
        </p>
        <pre class="userinput">
<kbd class="command">bash -e</kbd>
</pre>
        <p>
          Now, remove a tool that needs <span class="application">Qt2 or
          3</span> and two unneed files (for the BLFS instructions below):
        </p>
        <pre class="userinput">
<kbd class="command">rm -rf qlo10k1 Makefile gitcompile</kbd>
</pre>
        <p>
          The <span class="application">ALSA Tools</span> package is only
          needed by those with advanced requirements for their sound card.
          The tools can be built all together at once, but if only a subset
          is needed, you need to <span class=
          "command"><strong>cd</strong></span> into the directory of each
          tool you wish to compile and run the commands. Here, we present
          instructions to build all tools.
        </p>
        <p>
          Install all <span class="application">ALSA Tools</span> by running
          the following commands:
        </p>
        <pre class="userinput">
<kbd class="command">for tool in *
do
  case $tool in
    seq )
      tool_dir=seq/sbiload
    ;;
    * )
      tool_dir=$tool
    ;;
  esac

  pushd $tool_dir
    ./configure --prefix=/usr
    make
    as_root make install
    as_root /sbin/ldconfig
  popd

done
unset tool tool_dir</kbd>
</pre>
        <p>
          Finally, exit the shell that was started earlier:
        </p>
        <pre class="userinput">
<kbd class="command">exit</kbd>
</pre>
      </div>
      <div class="content" lang="en" xml:lang="en">
        <h2 class="sect2">
          Contents
        </h2>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">Installed Programs:</strong>
              <span class="segbody">as10k1, cspctl, dl10k1, echomixer,
              envy24control, hda-verb, hdajackretask, hdajacksensetest,
              hdspconf, hdsploader, hdspmixer, hwmixvolume, init_audigy,
              init_audigy_eq10, init_live, lo10k1, ld10k1, ld10k1d,
              mixartloader, pcxhrloader, rmedigicontrol, sbiload, sscape_ctl,
              us428control, usx2yloader, and vxloader</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Library:</strong>
              <span class="segbody">liblo10k1.so</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Directories:</strong>
              <span class="segbody">/etc/hotplug, /usr/include/lo10k1,
              /usr/share/ld10k1, and /usr/share/sounds</span>
            </div>
          </div>
        </div>
        <div class="variablelist">
          <h3>
            Short Descriptions
          </h3>
          <table border="0" class="variablelist">
            <colgroup>
              <col align="left" valign="top" />
              <col />
            </colgroup>
            <tbody>
              <tr>
                <td>
                  <p>
                    <a id="as10k1" name="as10k1"></a><span class=
                    "term"><span class=
                    "command"><strong>as10k1</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an assembler for the emu10k1 DSP chip present in the
                    Creative SB Live, PCI 512, and emu APS sound cards. It is
                    used to make audio effects such as a flanger, chorus or
                    reverb.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cspctl" name="cspctl"></a><span class=
                    "term"><span class=
                    "command"><strong>cspctl</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an SB16/AWE32 Creative Signal Processor (ASP/CSP)
                    control program.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="echomixer" name="echomixer"></a><span class=
                    "term"><span class=
                    "command"><strong>echomixer</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the Linux equivalent of the Echoaudio console
                    application from Echoaudio. It is a tool to control all
                    the features of any Echoaudio soundcard. This includes
                    clock sources, input and output gains, mixers, etc.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="envy24control" name=
                    "envy24control"></a><span class="term"><span class=
                    "command"><strong>envy24control</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a control tool for Envy24 (ice1712) based sound cards.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hdajackretask" name=
                    "hdajackretask"></a><span class="term"><span class=
                    "command"><strong>hdajackretask</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a GUI to make it easy to retask your jacks - e g, turn
                    your Mic jack into an extra Headphone, or why not make
                    them both line outs and connect them to your surround
                    receiver.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hda-verb" name="hda-verb"></a><span class=
                    "term"><span class=
                    "command"><strong>hda-verb</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a small program to send HD-audio commands to the given
                    ALSA hwdep device on the hd-audio interface.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hdspconf" name="hdspconf"></a><span class=
                    "term"><span class=
                    "command"><strong>hdspconf</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a GUI to control the Hammerfall HDSP Alsa Settings. Up
                    to four hdsp cards are supported.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hdsploader" name="hdsploader"></a><span class=
                    "term"><span class=
                    "command"><strong>hdsploader</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is used to load the firmware required by the Hammerfall
                    HDSP sound cards.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hdspmixer" name="hdspmixer"></a><span class=
                    "term"><span class=
                    "command"><strong>hdspmixer</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the Linux equivalent of the Totalmix application from
                    RME. It is a tool to control the advanced routing
                    features of the RME Hammerfall DSP soundcard series.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="hwmixvolume" name="hwmixvolume"></a><span class=
                    "term"><span class=
                    "command"><strong>hwmixvolume</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    allows you to control the volume of individual streams on
                    sound cards that use hardware mixing.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="init_audigy_progs" name=
                    "init_audigy_progs"></a><span class="term"><span class=
                    "command"><strong>init_audigy*</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    are tools used to initialize Creative Sound Blaster
                    Audigy-series cards.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="init_live" name="init_live"></a><span class=
                    "term"><span class=
                    "command"><strong>init_live</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a tool used to initialize Creative Sound Blaster Live
                    cards.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ld10k1" name="ld10k1"></a><span class=
                    "term"><span class=
                    "command"><strong>ld10k1</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the server of a EMU10K{1,2} patch loader for ALSA.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lo10k1" name="lo10k1"></a><span class=
                    "term"><span class=
                    "command"><strong>lo10k1</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the client of a EMU10K{1,2} patch loader for ALSA.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="dl10k1" name="dl10k1"></a><span class=
                    "term"><span class=
                    "command"><strong>dl10k1</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    loads config dumps generated by <span class=
                    "command"><strong>lo10k1</strong></span> and <span class=
                    "command"><strong>ld10k1</strong></span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ld10k1d" name="ld10k1d"></a><span class=
                    "term"><span class=
                    "command"><strong>ld10k1d</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an init script for the <span class=
                    "command"><strong>ld10k1</strong></span> patch loader.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="mixartloader" name="mixartloader"></a><span class=
                    "term"><span class=
                    "command"><strong>mixartloader</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a helper program to load the firmware binaries onto
                    the Digigram's miXart board sound drivers. The following
                    modules require this program: snd-mixart. These drivers
                    don't work properly at all until the certain firmwares
                    are loaded, i.e. no PCM nor mixer devices will appear.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pcxhrloader" name="pcxhrloader"></a><span class=
                    "term"><span class=
                    "command"><strong>pcxhrloader</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a helper program to load the firmware binaries onto
                    Digigram's pcxhr compatible board sound drivers. The
                    following modules require this program: snd-pcxhr. These
                    drivers don't work properly at all until certain
                    firmwares are loaded, i.e. no PCM nor mixer devices will
                    appear.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="rmedigicontrol" name=
                    "rmedigicontrol"></a><span class="term"><span class=
                    "command"><strong>rmedigicontrol</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a control tool for RME Digi32 and RME Digi96 sound
                    cards. It provides a graphical frontend for all the sound
                    card controls and switches.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="sbiload" name="sbiload"></a><span class=
                    "term"><span class=
                    "command"><strong>sbiload</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an OPL2/3 FM instrument loader for the ALSA sequencer.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="sscape_ctl" name="sscape_ctl"></a><span class=
                    "term"><span class=
                    "command"><strong>sscape_ctl</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an ALSA SoundScape control utility.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="us428control" name="us428control"></a><span class=
                    "term"><span class=
                    "command"><strong>us428control</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a Tascam US-428 control program.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="usx2yloader" name="usx2yloader"></a><span class=
                    "term"><span class=
                    "command"><strong>usx2yloader</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a helper program to load the 2nd Phase firmware
                    binaries onto the Tascam USX2Y USB sound cards. It has
                    proven to work so far for the US122, US224 and US428. The
                    snd-usb-usx2y module requires this program.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="vxloader" name="vxloader"></a><span class=
                    "term"><span class=
                    "command"><strong>vxloader</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a helper program to load the firmware binaries onto
                    the Digigram's VX-board sound drivers. The following
                    modules require this program: snd-vx222, snd-vxpocket,
                    snd-vxp440. These drivers don't work properly at all
                    until the certain firmwares are loaded, i.e. no PCM nor
                    mixer devices will appear.
                  </p>
                </td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <p class="updated">
        Last updated on 2020-03-09 10:02:12 -0500
      </p>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="alsa-utils.html" title=
          "alsa-utils-1.2.2">Prev</a>
          <p>
            alsa-utils-1.2.2
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="alsa-firmware.html" title=
          "alsa-firmware-1.2.1">Next</a>
          <p>
            alsa-firmware-1.2.1
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="libdriv.html" title=
          "Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
  </body>
</html>
